package cn.slg.test;

import cn.slg.module.system.dal.dataobject.group.Group;
import cn.slg.module.system.dal.dataobject.wujiang.WuJiangDO;

import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import java.util.HashMap;
import java.util.concurrent.ConcurrentHashMap;

// 存放着所有的战法
public class AllSkill {

    // 存放所有函数，Method即反射到的方法对象
    public static HashMap<String, Method> allSkill = new HashMap<>();

    static {
        try {
            // 通过反射，拿到类对象
            Class<?> aClass = AllSkill.class;

            // 拿到类对象所有声明的方法
            Method[] methods = aClass.getDeclaredMethods();

            // 遍历，只要静态方法
            for (Method method : methods) {
                if (Modifier.isStatic(method.getModifiers())) {
                    // 拿到类对象的静态方法
                    allSkill.put(method.getName(), aClass.getMethod(method.getName(), WuJiangDO.class));
                }
            }
        } catch (NoSuchMethodException e) {
            throw new RuntimeException(e);
        }
    }

    // 这是个静态函数
    public static void renDeZaiShi(WuJiangDO me) {
        me.setBingLi((short) 10000);
    }

    public static void weiZhenHuaXia(WuJiangDO me) {
        me.setBingLi((short) 10000);
    }


}
